import numpy as np
# arr = np.array([[110,120,90,80],[89,95,77,92],[60,79,96,80]])
# print('3*4的数组：\n',arr)
# print('第三行和第一行的元素：\n',arr[[2,0]])
# print('第三行第二列和第一行第一列的元素',arr[[2,0],[1,0]])
# print('大于80且小于100的所有元素',arr[(arr>80)&(arr<100)])
# print('小于等于80的所有元素：',arr[arr<=80])

arr1 = np.array([[11,13,18,],[45,46,78],[15,87,33]],dtype='int32')
print('设置矩阵类型为int32并输出:\n',arr1)
print('查看数组的各种属性，如表2-2四种属性:\n',arr1.ndim)
print('查看数组的各种属性，如表2-2四种属性:\n',arr1.shape)
print('查看数组的各种属性，如表2-2四种属性:\n',arr1.size)
print('查看数组的各种属性，如表2-2四种属性:\n',arr1.dtype)
print('第2行，第3列的元素:\n',arr1[1,2])
print('第2行、列步长为2的元素:\n',arr1[1,::2])
print('第1~2行、第2~3列的元素:\n',arr1[0:1,1:3])
print('第1行第2列、第2行第3列的元素:\n',arr1[[0,1],[1,2]])
print('大于30小于80的元素:\n',arr1[(arr1>30)&(arr1<80)])

arr11=np.linspace(5,50,num=6,retstep=True)
print('创建 [5,50]区间，元素个数为6的等差数列 显示公差:\n',arr11)

arr12=np.logspace(0,8,num=6,base=3)
print('创建指数区间为[0，8），元素个数为6，底数为3的等比数列:\n',)

arr2 = np.array([[10,20,30],[40,50,60]])
print('2*3的数组：\n',arr2)
arr3=np.array([[1,2,3],[2,2,3]])
print('2*3的数组：\n',arr3)
print('arr2与arr3的加法运算：\n',arr2+arr3)
print('arr2与arr3的减法运算：\n',arr2-arr3)
print('arr2与arr3的乘法运算：\n',arr2*arr3)
print('arr2与arr3的除法运算：\n',arr2/arr3)
print('arr2与arr3的幂运算：\n',arr2**arr3)

arr4=np.array([[10,20,30],[40,50,60]])
arr5=np.array([1,2,3])
print('arr4与arr5相加:\n',arr4+arr5)
arr6=np.array([[1],[2]])
print('arr4与arr6相加：\n',arr4+arr6)
arr7=np.array(5)
print('arr4与arr7相加：\n',arr4+arr7)